package com.firemoss.atonement.changewatcher.valuecomparison
{
	public class AbstractComparitor
	{
		private var _comparitorFactory:IValueComparitorFactory
		public function set comparitorFactory( factory:IValueComparitorFactory ) : void
		{
			_comparitorFactory = factory;
		}
		public function get comparitorFactory() : IValueComparitorFactory
		{
			return _comparitorFactory;
		}
		
		protected function compareNestedValues( val1 : *, val2 : * ) : *
		{
			return comparitorFactory.forValues( val1, val2 ).compare( val1, val2 );
		}
	}
}